1. Field of the Invention
The present invention relates to printers, and more specifically to a method and apparatus for efficient implementation of raster operations specified by a page description language (PDL).
2. Related Art
Printers are often used to print specified content (received from an external system such as personal computers) on medium such as paper. The content to be printed (“page content”) is typically specified by page description languages (PDL) such as Postscript (PS) and Printer Control Language (PCL), as is well known in the relevant arts. Printing generally entails converting page content specified by a PDL to a corresponding bit map. The bit map may then be used to print the content on a desired medium (e.g., paper).
Bit maps are often generated by performing raster operations on data representing source, destination and paint. As is well known, a destination generally refers to a bit-map formed by rendering the display-list elements up to that point of time. A source refers to a current display list element being rendered, and paint refers to the shade of color or a pattern that the source may be filled with in the destination. Destination is generally generated based on the source and paint.
The destination resulting from the performance of the raster operations generally represents the page content to be printed on a page. As the page content is generated by performing raster operations, it is generally required to implement the raster operations while meeting/balancing various requirements such as throughput performance and memory requirements.
One situation in which such a requirement may be present is in supporting transparencies. Transparency generally refers to a feature in which an image portion represented by an operand to be ‘transparent’ such that another image portion represented by another operand can appear in the page content. The raster operation flow may need to be implemented while meeting/balancing various requirements while supporting transparency.
Another situation in which such a requirement (to meet/balance as noted above) may be present is when a color value is to be used to be fill objects while performing the raster operations. A color value refers to a constant value which could be used to fill an object subject to the performance of a raster operation. All points of a paint operand are some times present as a color value as is well known in the relevant arts. The paint operand can other times be a pattern. Raster operations using the patterns may also need to be implemented efficiently.